package cn.edu.scau.service;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import cn.edu.scau.entity.RecoveryTrack;


public interface RecoveryTrackService {
	/**
	 * 新增康复跟踪
	 * @param recoveryTrack 康复跟踪对象
	 * @return 是否成功标志
	 */
    boolean insert(RecoveryTrack recoveryTrack);

    /**
     * 修改康复跟踪信息
     * @param recoveryTrack 康复跟踪对象
     * @return 是否成功标志
     */
    boolean update(RecoveryTrack recoveryTrack);

    /**
     * 根据康复跟踪记录日期和康复登记编号删除信息
     * @param recoverytrackdate 康复跟踪记录日期
     * @param recoveryregisterid 康复登记编号
     * @return 是否成功标志
     */
    boolean delete(Date recoverytrackdate,Integer recoveryregisterid);

    /**
     * 根据康复跟踪记录日期和康复登记编号查询
     * @param recoverytrackdate 康复跟踪记录日期
     * @param recoveryregisterid 康复登记编号
     * @return 康复跟踪对象
     */
    RecoveryTrack selectByPrimaryKey(Date recoverytrackdate,Integer recoveryregisterid);

    /**
     * 根据康复登记编号查询
     * @param recoveryregisterid 康复登记编号
     * @return 康复跟踪对象List
     */
    List<RecoveryTrack> selectByRecoveryRegisterID(Integer recoveryregisterid);

    /**
     * 查找所有康复跟踪信息
     * @return 康复跟踪对象List
     */
    List<RecoveryTrack> selectAll();

    /**
     * 根据康复跟踪记录日期、康复登记编号编号、客户名组合查询
     * @param recoverytrackdate 康复跟踪记录日期
     * @param recoveryregisterid 康复登记编号
     * @param customername 客户名
     * @return
     */
    List<RecoveryTrack> find(Date recoverytrackdate, Integer recoveryregisterid, String customername);
    
    /**
     * 根据护士编号查找 
     * @param nurseName
     * @return 康复跟踪对象List
     */
    List<RecoveryTrack> selectWithNurseID(Integer nurseID);
    
    /**
     * 根据康复跟踪记录日期、康复登记编号编号、客户名组合查询，康复登记编号中护士编号已经确定
     * @param nurseID
     * @return
     */
    List<RecoveryTrack> findWithNurseID(Date recoveryTrackDate,Integer recoveryRegisterID,String customerName,Integer nurseID);
}
